vscode-scb 途中でも発動しちゃうコードブロックと引用1
この辺パクってる
scbのコードブロックを表現する正規表現と同じパターンのを探してて、あ、pythonのdocstringやろと思ったのだが、違った
code:docstringは途中からでも発動できる.py
a = """たとえば
このように"""
code:でもcodeは違うよね?.scb
aaa
aaa
code:これは正しい.py
print('A!')
:c
aaa
aaacode:これは正しくない.py
print('A!')
:c
引用は、コードブロックできたのならその応用でできるだろと軽率に真似しただけ
が、元が途中発動なので、やはり途中で発動する
code:scb
これはハイライトされる
あああ>ここもハイライトされちゃう
--
ちなみになんでこの後読み先読みbeginendでdocstring的なことができるかは正直わかってないsta.icon
^(?<=[ ]*)code\\:と^(?<=[ ]*code\\:)とで結果が変わらんのも意味わからんし
VSCodeのsyntaxの正規表現解釈がアホすぎて?、秀丸エディタみたいにシンプルにいかないのが本当に辛い
code:json
"quote-statement": {
"begin": "^(?<= *>)",
"end": "$",
"patterns": [
{
"include": "#quote"
}
]
},
"quote": {
"begin": ">.+",
"end": "$",
"beginCaptures": {
"0": { "name": "quote.line.start.scb" }
},
"endCaptures": {
"0": { "name": "quote.line.end.scb" }
},
"name": "quote.line.scb"
},
"codeblock-statement": {
"begin": "^(?<= *)code\\:",
"end": "^(?<= *)\\:c",
"patterns": [
{
"include": "#codeblock"
}
]
},
"codeblock": {
"begin": "code\\:.+",
"end": "\\:c",
"beginCaptures": {
"0": { "name": "codeblock.start.scb" }
},
"endCaptures": {
"0": { "name": "codeblock.end.scb" }
},
"name": "codeblock.scb"
}